#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "config.h"
#include<QIcon>
#include<QPainter>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //调用初始化场景
    initScene();

    //启动游戏
    playGAME();
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::initScene()
{
    //设置窗口固定尺寸
    setFixedSize(GAME_WIDTH,GAME_HEIGHT);
    //设置标题
    setWindowTitle(GAME_TITLE);
    //加载标题图标
    setWindowIcon(QIcon(":/res/enemy1"));

    //定时器初始化
    m_timer.setInterval(GAME_RATE);

}

void MainWindow::playGAME()
{
    //启动定时器
    m_timer.start();
    //监听定时器信号
    connect(&m_timer,&QTimer::timeout,[=](){
        //更新游戏坐标
        updatePosition();
        //绘制到屏幕中
        update();
    });
}

void MainWindow::updatePosition()
{
    //更新地图坐标
    m_map.mapPosition();

}

void MainWindow::paintEvent(QPaintEvent *)
{
    QPainter painter(this);

    //绘制地图
    painter.drawPixmap(0,m_map.m_map1_posY,m_map.m_map1);
    painter.drawPixmap(0,m_map.m_map2_posY,m_map.m_map2);

    //绘制己方飞机
    painter.drawPixmap(m_hero.m_X,m_hero.m_Y,m_hero.m_Plane);
}

